package com.yssoft.utils;

/**
 * @ClassName: StringUtils
 * @Description: String字符串工具类
 * @author 江雪立
 * @date 2016年11月3日
 */
public class StringUtils {
    /**
     * 将字符串首字母大写
     * @param name 需要修改的字符串参数
     * @return 将name返回
     */
    public static String captureName(String name) {
        name = name.substring(0, 1).toUpperCase() + name.substring(1);
        return  name;

    }
    /**
     * 首字母大写
     *
     * @param srcStr
     * @return
     */
    public static String firstCharacterToUpper(String srcStr) {
        return srcStr.substring(0, 1).toUpperCase() + srcStr.substring(1);
    }
    /**
     * 替换字符串并让它的下一个字母为大写
     * @param srcStr
     * @param org
     * @param ob
     * @return
     */
    public static String replaceUnderlineAndfirstToUpper(String srcStr,String org,String ob)
    {
        String newString = "";
        int first=0;
        while(srcStr.indexOf(org)!=-1)
        {
            first=srcStr.indexOf(org);
            if(first!=srcStr.length())
            {
                newString=newString+srcStr.substring(0,first)+ob;
                srcStr=srcStr.substring(first+org.length(),srcStr.length());
                srcStr=firstCharacterToUpper(srcStr);
            }
        }
        newString=newString+srcStr;
        return newString;
    }
    /** 
     * 对字符加星号处理：除前面几位和后面几位外，其他的字符以星号代替 
     *  
     * @param content 
     *            传入的字符串 
     * @param frontNum 
     *            保留前面字符的位数 
     * @param endNum 
     *            保留后面字符的位数 
     * @return 带星号的字符串 
     */  
  
    public static String replaceWithStar(String content, int frontNum, int endNum) {  
        if (content == null) {  
            return null;  
        }  
        int length = content.length();  
        if (length == 0) {  
            return content;  
        }  
        if (frontNum >= length || frontNum < 0) {  
            return content;  
        }  
        if (endNum >= length || endNum < 0) {  
            return content;  
        }  
        if (frontNum + endNum >= length) {  
            return content;  
        }  
        String starStr = "";  
        for (int i = 0; i < (length - frontNum - endNum); i++) {  
            starStr = starStr + "*";  
        }  
        return content.substring(0, frontNum) + starStr  
                + content.substring(length - endNum, length);  
  
    } 
   
}
